// -----------------------------
// Author: 		Dhaenens Gert 
// Creation: 	12/4/2014 3:01:30 PM				
// -----------------------------

#ifndef _ISolidColorBrush_h
#define _ISolidColorBrush_h

#include "IBrush.h"

namespace DxLib
{

	class IRenderTarget2D;

	class DXLIB ISolidColorBrush : public IBrush
	{
	public:
		// Create a Brush
		static ISolidColorBrush*	Create(IRenderTarget2D* lpTarget, Float r, Float g, Float b, Float a);
		// Release the Interface
		virtual void				Release() = 0;

		// Set the Opacity
		virtual void		SetOpacity(Float opacity) = 0;
		// Set the Color
		virtual void		SetColor(Float r, Float g, Float b, Float a) = 0;

		// Get the Opacity
		virtual Float		GetOpacity() const = 0;
		// Get the Color
		virtual void		GetColor(Float* lpR, Float* lpG, Float* lpB, Float* lpA) const = 0;

		// Get the Brush Type
		virtual BrushType	GetType() const = 0;
	};

}

#endif